Mobile technology is rapidly developing, fueling even more rapid development of software capable of exploiting the new and expanded functionality offered by mobile devices. As a result, entire new development communities have arisen to contribute to the expanding pool of software tools available to mobile device users. Large producers of mobile hardware and software have even released software development platforms to the general public and/or provided access to application distribution services to select developers, e.g. via a registration process. To users' great benefit, a wide array of mobile applications designed to perform myriad activities using mobile devices are now readily available for quick download, installation and implementation via mobile communication networks.
The currently available mobile software applications and development platforms provide diverse and powerful functionality to both end-users and developers capable of leveraging the various capabilities of existing mobile devices. However, there is currently no tool available for dynamically developing and employing smart mobile applications capable of adapting to user behavior and/or requirements. For example, current mobile development platforms and/or mobile applications are incapable of transparently determining an appropriate format for processing and outputting data such that the processed data may be seamlessly passed to and/or processed by a subsequent application or algorithm based on prior user activity; such as a user formatting the output and passing the output to the subsequent application or processing algorithm.
Since users cannot dynamically develop and/or process data using currently-available mobile software tools, in order to implement a new or modified process or application, new development effort is required. At best, either new functionality must be encoded into an existing application, or entire new applications must be developed to provide the desired capabilities. At worst, the desired “new” functionality cannot be implemented due to compatibility issues, process limitations, etc. The ultimate result is that end users must wait for development and deployment of the new or modified process(es) or application(s), which is undesirable and even may be unacceptable in some situations.
Moreover, while some users may be capable of developing and/or modifying existing software to perform desired functions, the majority of users do not possess the time or technical expertise to customize software products in this manner. Therefore, valuable input from non-developer users cannot be incorporated into current mobile applications and/or software development platforms without communication between the user(s) and developers, which is inconvenient in some situations and impossible in others. Ultimately, these constraints exclude many individuals from the development community, frustrating or precluding communication between the development community and end users, as well as unnecessarily restricting the available development resources to individuals having significant technical expertise and/or development experience.
Therefore, it would be beneficial to provide systems, methods, and computer program products encompassing a platform for development and use of smart mobile software applications to enable real-time data processing and dynamic application development. It would be a further benefit to enable developers and non-developer users alike to transparently create and/or adapt mobile applications that process data and/or facilitate subsequent processing of the data according to learned criteria such as user behavior and/or requirements. The application is also beneficially capable of dynamically adapting workflow processes in response to various stimuli, enabling a user-oriented experience that provides user-specific benefits tailored to the user's desired activities.